package org.hackystat.ui.chart.jfc.chartresource.dataset;

import java.util.Collection;
import java.util.Date;

/**
 * Defines core methods for the Data factory.
 *
 * @author Pavel Senin.
 *
 */
public interface AbstractDataFactory {

  /**
   * Reports the analysis results.
   *
   * @param project the project name.
   * @param sdtMajor the sensor data major category.
   * @param sdtMinor the sensor data minor category.
   * @param startDate the start date of analysis.
   * @param endDate the end date of analysis.
   * @param granularity the report granularity (day, week, month).
   * @return the set of (X,Y) values.
   */
  public abstract Collection getData(String project, String sdtMajor, String sdtMinor,
      Date startDate, Date endDate, String granularity);

}
